package com.xyy.saas.payment.dao.model;

import java.io.Serializable;
import java.util.Date;

/**
 * fbank_pay_records
 * @author 
 */
public class FbankPayRecords implements Serializable {
    /**
     * 主键
     */
    private Long id;

    /**
     * 业务线
     */
    private String businessType;

    /**
     * 业务订单类型
     */
    private String businessOrderType;

    /**
     * 商户号
     */
    private String merchantNo;

    /**
     * 请求流水号
     */
    private String clientSerialNo;

    /**
     * 交易流水号
     */
    private String orderNo;

    /**
     * 交易金额
     */
    private String amount;

    /**
     * 交易状态
     */
    private String tradeStatus;

    /**
     * 交易类型
     */
    private String tradeType;

    /**
     * 交易订单创建时间
     */
    private Date payTime;

    /**
     * 交易订单完成时间
     */
    private Date successTime;

    /**
     * 出账方账号
     */
    private String outAccountNo;

    /**
     * 出账方户名
     */
    private String outAccountName;

    /**
     * 出账方银行简称
     */
    private String outBankCode;

    /**
     * 入账方账号
     */
    private String inAccountNo;

    /**
     * 入账方户名
     */
    private String inAccountName;

    /**
     * 入账方银行简称
     */
    private String inBankCode;

    /**
     * 入账方证件号
     */
    private String inCardNo;

    /**
     * 商户保留域
     */
    private String extra;

    /**
     * 分账信息
     */
    private String propateInfo;

    /**
     * 分润信息
     */
    private String furunInfo;

    /**
     * 交易备注
     */
    private String remarks;

    /**
     * 手续费
     */
    private String feeAmount;

    /**
     * 担保信息
     */
    private String guarantee;

    /**
     * 创建时间
     */
    private Date createTime;

    /**
     * 更新时间
     */
    private Date updateTime;
    /**
     * 交易类型
     */
    private Integer tradeCode;
    /**
     * 业务侧单号
     */
    private String businessNo;
    /**
     * 是否删除
     */
    private Integer yn;

    private static final long serialVersionUID = 1L;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getBusinessType() {
        return businessType;
    }

    public void setBusinessType(String businessType) {
        this.businessType = businessType;
    }

    public String getBusinessOrderType() {
        return businessOrderType;
    }

    public void setBusinessOrderType(String businessOrderType) {
        this.businessOrderType = businessOrderType;
    }

    public String getMerchantNo() {
        return merchantNo;
    }

    public void setMerchantNo(String merchantNo) {
        this.merchantNo = merchantNo;
    }

    public String getClientSerialNo() {
        return clientSerialNo;
    }

    public void setClientSerialNo(String clientSerialNo) {
        this.clientSerialNo = clientSerialNo;
    }

    public String getOrderNo() {
        return orderNo;
    }

    public void setOrderNo(String orderNo) {
        this.orderNo = orderNo;
    }

    public String getAmount() {
        return amount;
    }

    public void setAmount(String amount) {
        this.amount = amount;
    }

    public String getTradeStatus() {
        return tradeStatus;
    }

    public void setTradeStatus(String tradeStatus) {
        this.tradeStatus = tradeStatus;
    }

    public String getTradeType() {
        return tradeType;
    }

    public void setTradeType(String tradeType) {
        this.tradeType = tradeType;
    }

    public Date getPayTime() {
        return payTime;
    }

    public void setPayTime(Date payTime) {
        this.payTime = payTime;
    }

    public Date getSuccessTime() {
        return successTime;
    }

    public void setSuccessTime(Date successTime) {
        this.successTime = successTime;
    }

    public String getOutAccountNo() {
        return outAccountNo;
    }

    public void setOutAccountNo(String outAccountNo) {
        this.outAccountNo = outAccountNo;
    }

    public String getOutAccountName() {
        return outAccountName;
    }

    public void setOutAccountName(String outAccountName) {
        this.outAccountName = outAccountName;
    }

    public String getOutBankCode() {
        return outBankCode;
    }

    public void setOutBankCode(String outBankCode) {
        this.outBankCode = outBankCode;
    }

    public String getInAccountNo() {
        return inAccountNo;
    }

    public void setInAccountNo(String inAccountNo) {
        this.inAccountNo = inAccountNo;
    }

    public String getInAccountName() {
        return inAccountName;
    }

    public void setInAccountName(String inAccountName) {
        this.inAccountName = inAccountName;
    }

    public String getInBankCode() {
        return inBankCode;
    }

    public void setInBankCode(String inBankCode) {
        this.inBankCode = inBankCode;
    }

    public String getInCardNo() {
        return inCardNo;
    }

    public void setInCardNo(String inCardNo) {
        this.inCardNo = inCardNo;
    }

    public String getExtra() {
        return extra;
    }

    public void setExtra(String extra) {
        this.extra = extra;
    }

    public String getPropateInfo() {
        return propateInfo;
    }

    public void setPropateInfo(String propateInfo) {
        this.propateInfo = propateInfo;
    }

    public String getFurunInfo() {
        return furunInfo;
    }

    public void setFurunInfo(String furunInfo) {
        this.furunInfo = furunInfo;
    }

    public String getRemarks() {
        return remarks;
    }

    public void setRemarks(String remarks) {
        this.remarks = remarks;
    }

    public String getFeeAmount() {
        return feeAmount;
    }

    public void setFeeAmount(String feeAmount) {
        this.feeAmount = feeAmount;
    }

    public String getGuarantee() {
        return guarantee;
    }

    public void setGuarantee(String guarantee) {
        this.guarantee = guarantee;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    public Integer getYn() {
        return yn;
    }

    public void setYn(Integer yn) {
        this.yn = yn;
    }

    public Integer getTradeCode() {
        return tradeCode;
    }

    public void setTradeCode(Integer tradeCode) {
        this.tradeCode = tradeCode;
    }

    public String getBusinessNo() {
        return businessNo;
    }

    public void setBusinessNo(String businessNo) {
        this.businessNo = businessNo;
    }

    @Override
    public boolean equals(Object that) {
        if (this == that) {
            return true;
        }
        if (that == null) {
            return false;
        }
        if (getClass() != that.getClass()) {
            return false;
        }
        FbankPayRecords other = (FbankPayRecords) that;
        return (this.getId() == null ? other.getId() == null : this.getId().equals(other.getId()))
            && (this.getBusinessType() == null ? other.getBusinessType() == null : this.getBusinessType().equals(other.getBusinessType()))
            && (this.getBusinessOrderType() == null ? other.getBusinessOrderType() == null : this.getBusinessOrderType().equals(other.getBusinessOrderType()))
            && (this.getMerchantNo() == null ? other.getMerchantNo() == null : this.getMerchantNo().equals(other.getMerchantNo()))
            && (this.getClientSerialNo() == null ? other.getClientSerialNo() == null : this.getClientSerialNo().equals(other.getClientSerialNo()))
            && (this.getOrderNo() == null ? other.getOrderNo() == null : this.getOrderNo().equals(other.getOrderNo()))
            && (this.getAmount() == null ? other.getAmount() == null : this.getAmount().equals(other.getAmount()))
            && (this.getTradeStatus() == null ? other.getTradeStatus() == null : this.getTradeStatus().equals(other.getTradeStatus()))
            && (this.getTradeType() == null ? other.getTradeType() == null : this.getTradeType().equals(other.getTradeType()))
            && (this.getPayTime() == null ? other.getPayTime() == null : this.getPayTime().equals(other.getPayTime()))
            && (this.getSuccessTime() == null ? other.getSuccessTime() == null : this.getSuccessTime().equals(other.getSuccessTime()))
            && (this.getOutAccountNo() == null ? other.getOutAccountNo() == null : this.getOutAccountNo().equals(other.getOutAccountNo()))
            && (this.getOutAccountName() == null ? other.getOutAccountName() == null : this.getOutAccountName().equals(other.getOutAccountName()))
            && (this.getOutBankCode() == null ? other.getOutBankCode() == null : this.getOutBankCode().equals(other.getOutBankCode()))
            && (this.getInAccountNo() == null ? other.getInAccountNo() == null : this.getInAccountNo().equals(other.getInAccountNo()))
            && (this.getInAccountName() == null ? other.getInAccountName() == null : this.getInAccountName().equals(other.getInAccountName()))
            && (this.getInBankCode() == null ? other.getInBankCode() == null : this.getInBankCode().equals(other.getInBankCode()))
            && (this.getInCardNo() == null ? other.getInCardNo() == null : this.getInCardNo().equals(other.getInCardNo()))
            && (this.getExtra() == null ? other.getExtra() == null : this.getExtra().equals(other.getExtra()))
            && (this.getPropateInfo() == null ? other.getPropateInfo() == null : this.getPropateInfo().equals(other.getPropateInfo()))
            && (this.getFurunInfo() == null ? other.getFurunInfo() == null : this.getFurunInfo().equals(other.getFurunInfo()))
            && (this.getRemarks() == null ? other.getRemarks() == null : this.getRemarks().equals(other.getRemarks()))
            && (this.getFeeAmount() == null ? other.getFeeAmount() == null : this.getFeeAmount().equals(other.getFeeAmount()))
            && (this.getGuarantee() == null ? other.getGuarantee() == null : this.getGuarantee().equals(other.getGuarantee()))
            && (this.getCreateTime() == null ? other.getCreateTime() == null : this.getCreateTime().equals(other.getCreateTime()))
            && (this.getUpdateTime() == null ? other.getUpdateTime() == null : this.getUpdateTime().equals(other.getUpdateTime()))
            && (this.getYn() == null ? other.getYn() == null : this.getYn().equals(other.getYn()));
    }

    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + ((getId() == null) ? 0 : getId().hashCode());
        result = prime * result + ((getBusinessType() == null) ? 0 : getBusinessType().hashCode());
        result = prime * result + ((getBusinessOrderType() == null) ? 0 : getBusinessOrderType().hashCode());
        result = prime * result + ((getMerchantNo() == null) ? 0 : getMerchantNo().hashCode());
        result = prime * result + ((getClientSerialNo() == null) ? 0 : getClientSerialNo().hashCode());
        result = prime * result + ((getOrderNo() == null) ? 0 : getOrderNo().hashCode());
        result = prime * result + ((getAmount() == null) ? 0 : getAmount().hashCode());
        result = prime * result + ((getTradeStatus() == null) ? 0 : getTradeStatus().hashCode());
        result = prime * result + ((getTradeType() == null) ? 0 : getTradeType().hashCode());
        result = prime * result + ((getPayTime() == null) ? 0 : getPayTime().hashCode());
        result = prime * result + ((getSuccessTime() == null) ? 0 : getSuccessTime().hashCode());
        result = prime * result + ((getOutAccountNo() == null) ? 0 : getOutAccountNo().hashCode());
        result = prime * result + ((getOutAccountName() == null) ? 0 : getOutAccountName().hashCode());
        result = prime * result + ((getOutBankCode() == null) ? 0 : getOutBankCode().hashCode());
        result = prime * result + ((getInAccountNo() == null) ? 0 : getInAccountNo().hashCode());
        result = prime * result + ((getInAccountName() == null) ? 0 : getInAccountName().hashCode());
        result = prime * result + ((getInBankCode() == null) ? 0 : getInBankCode().hashCode());
        result = prime * result + ((getInCardNo() == null) ? 0 : getInCardNo().hashCode());
        result = prime * result + ((getExtra() == null) ? 0 : getExtra().hashCode());
        result = prime * result + ((getPropateInfo() == null) ? 0 : getPropateInfo().hashCode());
        result = prime * result + ((getFurunInfo() == null) ? 0 : getFurunInfo().hashCode());
        result = prime * result + ((getRemarks() == null) ? 0 : getRemarks().hashCode());
        result = prime * result + ((getFeeAmount() == null) ? 0 : getFeeAmount().hashCode());
        result = prime * result + ((getGuarantee() == null) ? 0 : getGuarantee().hashCode());
        result = prime * result + ((getCreateTime() == null) ? 0 : getCreateTime().hashCode());
        result = prime * result + ((getUpdateTime() == null) ? 0 : getUpdateTime().hashCode());
        result = prime * result + ((getYn() == null) ? 0 : getYn().hashCode());
        return result;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", id=").append(id);
        sb.append(", businessType=").append(businessType);
        sb.append(", businessOrderType=").append(businessOrderType);
        sb.append(", merchantNo=").append(merchantNo);
        sb.append(", clientSerialNo=").append(clientSerialNo);
        sb.append(", orderNo=").append(orderNo);
        sb.append(", amount=").append(amount);
        sb.append(", tradeStatus=").append(tradeStatus);
        sb.append(", tradeType=").append(tradeType);
        sb.append(", payTime=").append(payTime);
        sb.append(", successTime=").append(successTime);
        sb.append(", outAccountNo=").append(outAccountNo);
        sb.append(", outAccountName=").append(outAccountName);
        sb.append(", outBankCode=").append(outBankCode);
        sb.append(", inAccountNo=").append(inAccountNo);
        sb.append(", inAccountName=").append(inAccountName);
        sb.append(", inBankCode=").append(inBankCode);
        sb.append(", inCardNo=").append(inCardNo);
        sb.append(", extra=").append(extra);
        sb.append(", propateInfo=").append(propateInfo);
        sb.append(", furunInfo=").append(furunInfo);
        sb.append(", remarks=").append(remarks);
        sb.append(", feeAmount=").append(feeAmount);
        sb.append(", guarantee=").append(guarantee);
        sb.append(", createTime=").append(createTime);
        sb.append(", updateTime=").append(updateTime);
        sb.append(", yn=").append(yn);
        sb.append(", serialVersionUID=").append(serialVersionUID);
        sb.append("]");
        return sb.toString();
    }
}